package com.appspot.yttv.client.model;


/**
 * Identifies a source for a station.
 * 
 * @author Ramona Bobohalma
 */
public class StationSource {
	
	public static enum Type {
		CATEGORY, CHANNEL, PLAYLIST, SEARCH;
	}
	
	private final Type type;
	private final String contentId;
	
	private StationSource(Type type, String contentId) {
		super();
		this.type = type;
		this.contentId = contentId;
	}
	
	public static StationSource forChannel(String contentId) {
		return new StationSource(Type.CHANNEL, contentId);
	}
	
	public static StationSource forCategory(String contentId) {
		return new StationSource(Type.CATEGORY, contentId);
	}
	
	public static StationSource forPlaylist(String contentId) {
		return new StationSource(Type.PLAYLIST, contentId);
	}
	
	public static StationSource forSearch(String contentId) {
		return new StationSource(Type.SEARCH, contentId);
	}
	
	public Type getType() {
		return type;
	}

	public String getContentId() {
		return contentId;
	}	
}
